//507. 完美数
//对于一个 正整数，如果它和除了它自身以外的所有 正因子 之和相等，我们称它为 「完美数」。
//给定一个 整数 n， 如果是完美数，返回 true；否则返回 false。


#include <stdio.h>
#include <stdbool.h>

bool checkPerfectNumber(int num)
{
    int sum = 0;
    for(int i = 1; i <= num / 2; i++)
    {
        if(num % i == 0)
        {
            sum += i;
        }
    }
    if(num == sum)
        return true;
    return false;
}


int main()
{    
    // int num;
    // printf("输入一个正整数:");
    // scanf("%d",&num);
    for(int i = 1; i < 10000; i++)
    {
        if(checkPerfectNumber(i) == true)
        printf("%d ",i);
    }
    // if(checkPerfectNumber(num) == true)
    //     printf("%d是完美数\n",num);
    // else    
    //     printf("%d不是完美数\n",num);
    return 0;
}